global class EmailVelocity
{
    public static void send(List<EmailVelocityHandler.Hist> Offenders)
    {
        String body = '';
        
        for (EmailVelocityHandler.Hist item : Offenders)
        {         
            List<String> v = new List<String> {item.fromAddress, item.toAddress, String.valueOf(item.cnt)};
            String Msg = String.format('The email vector:\n    {0} --> {1}\n\nhas exceeded the velocity threshold with a count of {2}\n\n', v);       
            body = body + Msg;
        }
              
        Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
        String[] toAddresses = new String[] {'salesforcedev@attinteractive.com'};
        mail.setToAddresses(toAddresses);
        //mail.setReplyTo('noreply@salesforce.com');
        mail.setSenderDisplayName('Salesforce email velocity warning service');
        mail.setSubject('Email Velocity Warning');
        mail.setUseSignature(false);
        mail.setPlainTextBody(body);
        Messaging.sendEmail(new Messaging.SingleEmailMessage[] { mail });
    }  
}